$(function() {
	
	layui.use(['table','form','layer','upload'], 
		function() {
		//获得模块对象
		var table = layui.table;
		var form = layui.form;
		var $ = layui.jquery;
		var layer = layui.layer;
		var upload = layui.upload;
		
		// -----------------------------------
		// 数据表格渲染
		var moneyTransfersTable = table.render({
			id : 'moneyTb',
			elem : '#test',
			url : 'moneyTransfers',
			method : 'get',
			where : {} // 你额外要携带数据，以键值对的方式存入
			,
			 toolbar: '#toolbarDemo' //开启头部工具栏，并为其绑定左侧模板
			,
			defaultToolbar : [ 'filter', 'exports', 'print', { // 自定义头部工具栏右侧图标。如无需自定义，去除该参数即可
				title : '提示',
				layEvent : 'LAYTABLE_TIPS',
				icon : 'layui-icon-tips'
			} ],
			cellMinWidth : 80 // 全局定义所有常规单元格的最小宽度（默认：60）
			,
			cols : [ [ {
				type : 'numbers'
			} // 序号
			, {
				type : 'checkbox'
			} // 复选框
			, {
				field : 'capitalTransferId',
				title : '资金调拨ID',
				width : '150'
				//hide:true
			}, {
				field : 'capitalTransferNo',
				title : '资金调拨编号',
				width : '200'
				
			},{
				field : 'fundId',
				title : '基金ID',
				width : '200'
			},{
				field : 'fundCode',
				title : '基金代码',
				width : '150'
			}, {
				field : 'fundName',
				title : '基金名',
				width : '150'
			},{
				field : 'accountId',
				title : '账户ID',
				width : '200'
			},{
				field : 'accountNo',
				title : '账号',
				width : '150'
			},{
				field : 'accountName',
				title : '账户名',
				width : '150'
				//hide : true
			}, {
				field : 'transferAmount',
				title : '调拨金额',
				width : '150'
				
			},{
				field : 'transferDate',
				title : '调拨日期',
				width : '150'
				
			},{
				field : 'transferFlag',
				title : '调拨标识',
				width : '150',
				templet : function(d) {
					if (d.transferFlag == 1) {
						return '<span style="color:green;">'
								+ '流入' + '</span>'
					} else {
						return '<span style="color:red;">'
								+ '流出' + '</span>'
					}
				}
					
					
			},{
				field : 'transferType',
				title : '调拨类型',
				width : '150'
			},{
				field : 'businessId',
				title : '业务ID',
				width : '150'
			},
			] ],
			page : true // 开启分页
			,
			limit : 10 // 每页显示的条数
			,
			limits : [ 5, 10, 20, 50, 100 ] // 每页条数的选择项
			,
			loading : true // 是否显示加载条(切换分页的时候显示）
			,
			title : '股票交易数据表' // 定义 table 的大标题（在文件导出等地方会用到）
			// ,id: 'userTable' // 设定容器唯一 id
			,
			even : false
		// 隔行变色
		});
		
		
		//头部工具栏事件
		table.on('toolbar(test2)', function(obj) {
			
			var checkStatus = table.checkStatus(obj.config.id);
			
			switch (obj.event) {
				//结算
			case 'closeBtn':
				var data = checkStatus.data;	
					closeModal(data);
					//console.log(data);
				break;
				
				
				//反结算
			case 'againstClose':
				var data = checkStatus.data;
				againstCloseModal(data);
				break;

			// 自定义头工具栏右侧图标 - 提示
			case 'LAYTABLE_TIPS':
				layer.alert('这是工具栏右侧自定义的一个图标按钮');
				break;
			}
			;
		});
		
		
		 //结算弹出层
		  var closeModal = function(data) {
			  var stockTradeId = '';
				var tradeStatus = '';
				for (var i = 0; i < data.length; i++) {
					stockTradeId += data[i].stockTradeId + ',';
					tradeStatus += data[i].tradeStatus + ',';

				}
				if (data.length < 1) {
					layer.confirm('请选择要结算的数据');
				} else if (data.length >= 1) {
					for (var i = 0; i < data.length; i++) {
						if (data[i].tradeStatus == 1) {
							layer.confirm('您选择的数据中存在已结算 请重新选择');
							return;
						}

					}
					$.ajax({
						type : "POST",
						url : 'closeStock',
						data : {
							_method : 'PUT',
							'tradeStatus' : tradeStatus,
							'stockTradeId' : stockTradeId
						},
						traditional : true,// 属性在这里设置
						dataType : 'json',
						success : function(data) {
							if (data == true) {
								layer.confirm('结算成功');
							} else {
								layer.confirm('结算失败');
							}
							// 刷新数据表格
							table.reload('stockTb', {
								url : 'stockTrades'
							});
						}
					})
				}
			}
		  //反结算
		  var againstCloseModal = function(data){
			  var stockTradeId = '';
				var tradeStatus = '';
				for (var i = 0; i < data.length; i++) {
					stockTradeId += data[i].stockTradeId + ',';
					tradeStatus += data[i].tradeStatus + ',';

				}
				
				 //截取业务拼接产生的多余的逗号
				stockTradeId = stockTradeId.substring(0,stockTradeId.length-1);
				tradeStatus = tradeStatus.substring(0,tradeStatus.length-1);
				
				
				if (data.length < 1) {
					layer.confirm('至少选择一条数据');
				} else if (data.length >= 1) {
					for (var i = 0; i < data.length; i++) {
						if (data[i].tradeStatus == 0) {
							layer.confirm('您选择的数据中存在未结算 请重新选择');
							return;
						}

					}
					$.ajax({
						type : "POST",
						url : 'closeStock',
						data : {
							_method : 'PUT',
							'tradeStatus' : tradeStatus,
							'stockTradeId' : stockTradeId
						},
						traditional : true,// 属性在这里设置
						dataType : 'json',
						success : function(data) {
							if (data == true) {
								layer.confirm('成功');
							} else {
								layer.confirm('失败');
							}
							// 刷新数据表格
							table.reload('stockTb', {
								url : 'stockTrades'
							});
						}
					})
				}
		  }
		
		
		
		
		
		//注意：折叠面板 依赖 element 模块，否则无法进行功能性操作
		layui.use('element', function(){
		  var element = layui.element;
		  
		  //…
		});
		
		 
		//头部搜素表单提交
		  form.on('submit(fundQueryBtn)', function(data){
			  console.log(data);
			   console.log(data.elem);//被执行事件的元素DOM对象，一般为button对象
			  console.log(data.form); //被执行提交的form对象，一般在存在form标签时才会返回
			 console.log(data.field); //当前容器的全部表单字段，名值对形式：{name: value}
		
			  var data = data.field;
			  stockClearingTable.reload({
				  where : {// 设定异步数据接口的额外参数，任意设
					  "stockName" : data.stockName,
					  "stockCode" : data.stockCode
					 
					 
				  },
				  page : {
					  curr : 1
				  }
			  });
			// 阻止表单跳转。如果需要表单跳转，去掉这段即可。
			  return false;
		  });
		  
		  

		
		//重置
		$("#reset").click(function(){
			stockClearingTable.reload({
				where: {
					"stockName" : null,
					  "stockCode" : null
					 
				} //设定异步数据接口的额外参数，任意设
				,page: {
					curr: 1 //重新从第 1 页开始
				}
			}); 
				 
		})
		
		
	
			 //指定允许上传的文件类型
			/*  upload.render({
			    elem: '#test3',
			    url: 'import',
			    exts : 'xls|xlsx',
			    method:'post',
			    accept: 'file', //普通文件
			    done: function(res,index,upload){
			    	layer.msg("上传成功");
			    	
			    	table.reload('stockTb',{
			    		url:'stockPlates'
			    	})
			    },
			  error : function(index,upload){
				  
			  }
			  
			  });*/
			
	
		
		
	})
	
});

